1. Field of the Invention
The present invention generally relates to system bus controllers and, more particularly, to a method and apparatus for intercommunication between system processor units (SPU), and between a SPU and all other system modules, including interface, clock, and switch units.
2. Description of the Prior Art
A system bus enables the exchange of data, usually in word-size quantities, among the various computer system units. In practice, a large number of units are connected to a single bus, with each unit contending in an orderly way for use of the bus for individual transfers.
The timing and sequence of data exchange between system components is controlled by a particular network bus architecture. One such architecture is known as Ethernet. All stations in a Ethernet are connected, through network interface cards or connectors, to a cable that is run to each user's equipment. The cable may be a unshielded twisted pair (UTP) wire (using an RJ-45 connector) or coaxial cable.
The Ethernet network uses a protocol called carrier-sense multiple access with collision detection (CSMA/CD). In the CSMA/CD protocol, each station shares the cable by constantly monitoring the cable to detect when it is idle (no user transmitting), when one user is transmitting (successfully), or when more than one user is simultaneously trying to transmit (collision).
The cable basically acts as a broadcast bus. Any station may transmit on the cable if the station detects it to be idle. Once a station transmits, other stations will not interrupt the transmission. With collision detection, if two stations begin to transmit at the same time, they detect the collision, stop, and retry after a randomly chosen period of time.
Ethernet networks have rated transmission data speeds of 10 million bits per second (Mbps). Idle time and collisions, however, can reduce the useful information throughput considerably, to approximately 1-2 Mbps. Fiber optic cables can not be used in such networks because they are not suited for direct taps by stations, which is possible with electrical coaxial cable.
In token ring networks, stations are arranged in an circle with point-to-point links between neighbors. Transmission flow is in one direction, either clockwise or counterclockwise. A transmitted message is relayed over the point-to-point links to the receiving station and then forwarded around the rest of the ring and back to the sender to serve as an acknowledgement. Only a station possessing a "token" (a single digital code word) may transmit. After transmitting, the station passes the token to its downstream neighbor, thus there are no collisions in a token ring.
Because token rings use point-to-point links, various transmission media such as shielded twisted pair (STP) and fiber optic cable may be used.
The transmission speed of a token ring depends on the transmission media used, ranging from 1 Mbps with STP to 16 Mbps with fiber optic cable. Most installations use STP, as it is the cheaper of the two.
These existing bus topologies have several disadvantages. For one, the transmission speeds are slow. As discussed above, while Ethernet speeds are rated at 10 Mbps, in actual operation they are much slower due to idle time and collisions. Token ring speeds range from 1-16 Mbps, but the data flow is unidirectional.
A second disadvantage is that large number of connecting pins are required and mechanical connections are required for the above topologies. Both topologies also require complex protocols to set up the messages and manage the data transfer. Finally, complex hardware schemes are required to support data transfer and error checking functions.
In light of the foregoing, there exists a need for system bus controller capable of wide bandwidth bi-directional data transfer, both between and among system processors and system modules, while employing simple protocols and hardware to format and manage data transfer.